Elastic Stack 6 : Install Logstash
2018/02/12 |
Install Logstash which collects or manages various logs.
For description of Logstash or how to write the setting file, refer to official site below.
⇒ https://www.elastic.co/guide/en/logstash/current/index.html |
|
[1] | Install Logstash. Configure Repository for Elasticsearch before it like here. |
[root@dlp ~]# yum -y install logstash
|
[2] | Create a setting file and start Logstash. For example, create a setting that Logstash collects sshd fail logs from [/var/log/secure]. |
[root@dlp ~]#
vi /etc/logstash/conf.d/sshd.conf # create new # extract sshd fail logs from [/var/log/secure] and output to index [sshd_fail-yyyy.mm] in elasticsearch input { file { type => "seucure_log" path => "/var/log/secure" } } filter { grok { add_tag => [ "sshd_fail" ] match => { "message" => "Failed %{WORD:sshd_auth_type} for %{USERNAME:sshd_invalid_user} from %{IP:sshd_client_ip} port %{NUMBER:sshd_port} %{GREEDYDATA:sshd_protocol}" } } } output { elasticsearch { index => "sshd_fail-%{+YYYY.MM}" } } chgrp logstash /var/log/secure [root@dlp ~]# chmod 640 /var/log/secure [root@dlp ~]# systemctl start logstash [root@dlp ~]# systemctl enable logstash
|
[3] | Few minutes later, make sure logs are collected normally. |
# show index list [root@dlp ~]# curl localhost:9200/_cat/indices?v health status index uuid pri rep docs.count docs.deleted store.size pri.store.size yellow open sshd_fail-2018.02 8becNsB_... 5 1 29 0 193.6kb 193.6kb yellow open test_index ZtKextHO... 5 1 1 0 6kb 6kb # show document list on index [root@dlp ~]# curl localhost:9200/sshd_fail-2018.02/_search?pretty { "took" : 41, "timed_out" : false, "_shards" : { "total" : 5, "successful" : 5, "skipped" : 0, "failed" : 0 }, "hits" : { "total" : 29, "max_score" : 1.0, "hits" : [ { "_index" : "sshd_fail-2018.02", "_type" : "doc", ..... ..... |
[4] | If Kibana is running, To add the Index in Kibana, data is imported in it and possible to create visualization you like. |